package dj;

import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpSession;

import org.springframework.web.context.WebApplicationContext;

import dj.model.Friend;
import dj.model.FriendGroup;
import dj.model.Tuser;
import dj.pageModel.Pmenu;
import dj.pageModel.Puser;
import dj.webservice.mas.org.csapi.service.CmccMasWbsSoap;

public class Constant {

	public static WebApplicationContext ac; // spring上下文
	
	public static CmccMasWbsSoap smws;	//mas webservice
	
	public static String APPLICATIONID = "A000000000000002";
	
	public static String MAS_WEBSERVICE_ADDR;	//mas webservice 地址
	
	public static String NOTIFY_MAS_ADDR;	//mas回调系统webservice地址

	public static String TOMCAT_PATH; // 项目tomcat路径

	public static String CONTEXT_PATH; // 项目名

	public static boolean GET_USER_FROM_DB; // 是否从数据中查询用户

	public static Map<String, Tuser> USER_ID_KEY_MAP; // 所有用户，系统启动时把所有用户加载进来，以ID为key

	public static Map<String, Tuser> USER_NAME_KEY_MAP; // 所有用户，系统启动时把所有用户加载进来，以name为key

	public static Map<String, List<FriendGroup>> FRIENDGROUP_USER_KEY_MAP = new LinkedHashMap<String, List<FriendGroup>>(); // 好友组，key是用户id，系统启动是加载

	public static List<FriendGroup> COMMON_FRIENDGROUP; // 公共好友组

	public static Map<String, List<Friend>> FRIEND_USER_KEY_MAP; // 好友，key是用户id，系统启动是加载
	
	public static Map<String, List<Friend>> HASFRIEND_USER_KEY_MAP; // 有此人好友的，key是用户id，系统启动是加载
	
	public static Map<String, List<Pmenu>> MENU_USER_KEY_MAP = new LinkedHashMap<String, List<Pmenu>>();		//用戶id为key的菜单map

	public static final String USER_SESSION = "userSession";
	
	public static final int STATE_OPEN = 0; // 用户状态 正常

	public static final int STATE_CLOSE = 1; // 用户状态 锁定

	public static final String STATE_READ = "1"; // 消息状态 已读，mysql数据库没有boolean类型，只能用字符串来替代了

	public static final String STATE_UNREAD = "0"; // 消息状态 未读
	
	public static final String USERTYPE_COMPANY = "company";	//用户类型，企业
	
	public static final String USERTYPE_USER = "user";			//用户类型，用户
	
	public static final String MENU_MEMBER_TYPE_USER = "user";	//菜单成员类型，用户
	
	public static final String MENU_MEMBER_TYPE_ROLE = "role";	//菜单成员类型，系统角色
	
	public static final String SYSROLE_MEMBER_TYPE_USER = "user";	//系统角色成员类型，用户
	
	public static final String SYSROLE_MEMBER_TYPE_ROLE = "role";	//系统角色成员类型，系统角色
	
	public static Map<String, Puser> onlineUser = new LinkedHashMap<String, Puser>();		//在线用户信息

	public static Map<String, HttpSession> onlineUserSession = new LinkedHashMap<String, HttpSession>();	//在线用户session信息

}
